9 research outputs found

    Towards Efficient Abstractions for Concurrent Consensus

    Full text link
    Consensus is an often occurring problem in concurrent and distributed programming. We present a programming language with simple semantics and build-in support for consensus in the form of communicating transactions. We motivate the need for such a construct with a characteristic example of generalized consensus which can be naturally encoded in our language. We then focus on the challenges in achieving an implementation that can efficiently run such programs. We setup an architecture to evaluate different implementation alternatives and use it to experimentally evaluate runtime heuristics. This is the basis for a research project on realistic programming language support for consensus.Comment: 15 pages, 5 figures, symposium: TFP 201

    Type-Based Analysis for Session Inference (Extended Abstract)

    No full text
    International audienceWe propose a type-based analysis to infer the session protocols of channels in an ML-like concurrent functional language. Combining and extending well-known techniques, we develop a type-checking system that separates the underlying ML type system from the typing of sessions. Without using linearity, our system guarantees communication safety and partial lock freedom. It also supports provably complete session inference for finite sessions with no programmer annotations. We exhibit the usefulness of our system with interesting examples, including one which is not typable in substructural type systems

    Foundations of Software Science and Computation Structures

    No full text
    We develop a theory of bisimulations for a simple language containing communicating transactions, obtained by dropping the isolation requirement of standard transactions. Such constructs have emerged as a useful programming abstraction for distributed systems. In systems with communicating transactions actions are tentative, waiting for certain transactions to commit before they become permanent. Our theory captures this by making bisimulations history-dependent, in that actions performed by transactions need to be recorded. The main requirement on bisimulations is the systems being compared need to match up exactly in the permanent actions but only those. The resulting theory is fully abstract with respect to a natural contextual equivalence and, as we show in examples, provides an effective verification technique for comparing systems with communicating transactions

    Bisimulations for Communicating Transactions?

    No full text
    Abstract. We develop a theory of bisimulations for a simple language containing communicating transactions, obtained by dropping the isolation requirement of standard transactions. Such constructs have emerged as a useful programming abstraction for distributed systems. In systems with communicating transactions actions are tentative, waiting for certain transactions to commit before they become permanent. Our theory captures this by making bisimulations history-dependent, in that actions performed by transactions need to be recorded. The main requirement on bisimulations is the systems being compared need to match up exactly in the permanent actions but only those. The resulting theory is fully abstract with respect to a natural contextual equivalence and, as we show in examples, provides an e↵ective verification technique for comparing systems with communicating transactions.

    Automated leak analysis of nucleic acid circuits

    No full text
    Nucleic acids are a powerful engineering material that can be used to implement a broad range of computational circuits at the nanoscale, with potential applications in high-precision biosensing, diagnostics, and therapeutics. However, nucleic acid circuits are prone to leaks, which result from unintended displacement interactions between nucleic acid strands. Such leaks can grow combinatorially with circuit size, are challenging to mitigate, and can significantly compromise circuit behavior. While several techniques have been proposed to partially mitigate leaks, computational methods for designing new leak mitigation strategies and comparing their effectiveness on circuit behavior are limited. Here we present a general method for the automated leak analysis of nucleic acid circuits, referred to as DSD Leaks. Our method extends the logic programming functionality of the Visual DSD language, developed for the design and analysis of nucleic acid circuits, with predicates for leak generation, a leak reaction enumeration algorithm, and predicates to exclude low probability leak reactions. We use our method to identify the critical leak reactions affecting the performance of control circuits, and to analyze leak mitigation strategies by automatically generating leak reactions. Finally, we design new control circuits with substantially reduced leakage including a sophisticated proportional-integral controller circuit, which can in turn serve as building blocks for future circuits. By integrating our method within an open-source nucleic acid circuit design tool, we enable the leak analysis of a broad range of circuits, as an important step toward facilitating robust and scalable nucleic acid circuit design

    Analgesia con agopuntura ed elettroagopuntura in chirurgia orale ed in altri campi dell'odontostomatologia

    No full text
    Gli autori fanno ampio riferimento alle basi dottrinarie dell'agopuntura cinese e dell'applicazione della medesima in anestesiologia in genere ed in quella Odontoiatrica in particolare. Passano quindi ad illustrare la loro sperimentazione clinica condotta su 24 pazienti di entrambi i sessi con fascia d'età compresa tra i 23 ed i 41 anni. Suggeriscono alcuni criteri che sono emersi essere utili al fine del corretto ricorso all'agopuntura od all'elettroagopuntura. in Odontostomatologia. Tra essi,quello dominante, è un’accurata scelta dei pazienti in rapporto a personalità che dimostrano di comprendere le basi della metodica che cui devono sottoporsi. I risultati conseguiti sono non pienamente soddisfacenti in rapporto alle pulpotomie/pulpectomie degli elementi dentali (soprattutto poliradicolati) ed alle terapie dentali in rapporto ai terzi molari. Vista la sostanziale modestia dei risultati, le procedure di agopuntura possono ritenersi indicate esclusivamente in quelle situazioni in cui non si possa agire diversamente
    corecore